Join Inverse Categories as Models of Reversible Recursion
نویسندگان
چکیده
Recently, a number of reversible functional programming languages have been proposed. Common to several of these is the assumption of totality, a property that is not necessarily desirable, and certainly not required in order to guarantee reversibility. In a categorical setting, however, faithfully capturing partiality requires handling it as additional structure. Recently, Giles studied inverse categories as a model of partial reversible (functional) programming. In this paper, we show how additionally assuming the existence of countable joins on such inverse categories leads to a number of properties that are desirable when modelling reversible functional programming, notably morphism schemes for reversible recursion, a †-trace, and algebraic ω-compactness. This gives a categorical account of reversible recursion, and, for the latter, provides an answer to the problem posed by Giles regarding the formulation of recursive data types at the inverse category level.
منابع مشابه
Join inverse categories and reversible recursion
Recently, a number of reversible functional programming languages have been proposed. Common to several of these is the assumption of totality, a property that is not necessarily desirable, and certainly not required in order to guarantee reversibility. In a categorical setting, however, faithfully capturing partiality requires handling it as additional structure. Recently, Giles studied invers...
متن کاملA categorical foundation for structured reversible flowchart languages
Structured reversible flowchart languages is a class of imperative reversible programming languages allowing for a simple diagrammatic representation of control flow built from a limited set of control flow structures, as ordinary structured flowcharts allow for conventional languages. This class includes the reversible programming language Janus (without recursion), as well as more recently de...
متن کاملA categorical foundation for structured reversible flowchart languages: Soundness and adequacy
Structured reversible flowchart languages is a class of imperative reversible programming languages allowing for a simple diagrammatic representation of control flow built from a limited set of control flow structures. This class includes the reversible programming language Janus (without recursion), as well as more recently developed reversible programming languages such as R-CORE and R-WHILE....
متن کاملکارایی روش های مختلف آنالیز آماری در تخمین مؤلفه های آب نمود واحد مصنوعی آبخیزهای شمال کشور
The present research aimed to compare different methods of statistical analysis and to select the best method for achievement to the model among components of synthetic unit hydrograph by using of the physical characteristics of catchments, in northern catchments of Iran, with the area of 177000 km2 in Giulan, Mazandaran and Golestan Provinces. For execution of the research, 9 physical charac...
متن کاملQuery Rewriting in the Presence of Functional Dependencies with Lossless Join Decomposition
Query rewriting is an essential issue in data integration systems over the Web and has received considerable attention. Many rewriting algorithms, e.g., the bucket algorithm, the inverse rules algorithm, the SVB algorithm and the MiniCon algorithm, have been proposed to address this issue in the absence of functional dependencies. These algorithms can be divided into two categories: bucket-base...
متن کامل